Embodiments of the inventive concept relate to a method of operating a data storage device, and more particularly, to a method of operating a data storage device which performs more efficient garbage collection by referencing locality information. Other embodiments of the inventive concept relate to a method of operating a data processing system including this type of data storage device.
Many flash-based data storage devices are relatively resource poor. This poverty of resources results in relatively less information being stored than in data storage devices having more sufficient resources. When garbage collection is performed on the flash-based data storage device, the flash-based data storage device collects (e.g., reads) information from available resources (e.g., a buffer memory implemented using a dynamic random access memory) necessary to the performance of a garbage collection operation. Thus, garbage collection comes at a cost that may be significant.
As data stored in a flash-based data storage device increases and garbage collection is more frequently performed, the overall performance of the flash-based data storage device becomes increasingly dependent on the efficiency of the garbage collection operation(s). Therefore, optimization of garbage collection (i.e., reducing the cost of garbage collection by improving efficiency) is required in order to increase or even maintain the performance level of a resource-poor, flash-based data storage devices.